﻿using System;
using System.Threading;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace WinMergeFS.Common
{
    public enum LogLevel { debug = 3, info = 2, error = 1, none = 0 }; //This is case-sensitive. Let it lowercase!

    public struct MountEntry
    {
        public Thread Thread;
        public Profile Profile;
        public static MountEntry NewEntry(Thread thread, Profile profile)
        {
            MountEntry _newentry;
            _newentry.Profile = profile;
            _newentry.Thread = thread;
            return _newentry;
        }
    }

    public struct DiskSpaceInfo
    {
        public ulong TotalSize;
        public ulong FreeSpaceAvailable;
        public ulong TotalFreeSpace;
        public string DriveLetter;
    }

    public delegate void RootSelectPluginDelegate(Profile profile, ref List<int> rootrating, string filename);

    public delegate void LoggerEventHandler(string message, LogLevel level);

}
